#ifndef VECTOR_H
#define VECTOR_H
/***************************************************************\

    ^^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^
    ^^    ^^  ^^    ^^     ^^     ^^    ^^
    ^^        ^^^^^^^^     ^^     ^^^^^^^^
    ^^   ^^^  ^^    ^^     ^^     ^^    ^^
    ^^    ^^  ^^    ^^     ^^     ^^    ^^
    ^^^^^^^^  ^^    ^^  ^^^^^^^^  ^^    ^^

    sample code from the book...
    Real Time 3D Terrain Engines Using C++ and DirectX

    by Greg Snook
    greg@mightystudios.com

\***************************************************************/
#include "core/core.h"


// vector declarations, operators and functions
#include "vector2.h"
#include "vector3.h"
#include "vector4.h"
#include "vector_functions.h"

namespace gaia
{
	// global, static vector values.
	static const TwVector2d ZeroV2(0.0f,0.0f);
	static const TwVector3d ZeroV3(0.0f,0.0f,0.0f);
	static const TwVector4d ZeroV4(0.0f,0.0f,0.0f,0.0f);
	static const TwVector4d ZeroV4W1(0.0f,0.0f,0.0f,1.0f);

	static const TwVector2d OneV2(1.0f,1.0f);
	static const TwVector3d OneV3(1.0f,1.0f,1.0f);
	static const TwVector4d OneV4(1.0f,1.0f,1.0f,1.0f);

	static const TwVector2d XAxisV2(1.0f,0.0f);
	static const TwVector3d XAxisV3(1.0f,0.0f,0.0f);
	static const TwVector4d XAxisV4(1.0f,0.0f,0.0f,0.0f);
	static const TwVector4d XAxisV4W1(1.0f,0.0f,0.0f,1.0f);

	static const TwVector2d YAxisV2(0.0f,1.0f);
	static const TwVector3d YAxisV3(0.0f,1.0f,0.0f);
	static const TwVector4d YAxisV4(0.0f,1.0f,0.0f,0.0f);
	static const TwVector4d YAxisV4W1(0.0f,1.0f,0.0f,1.0f);

	static const TwVector3d ZAxisV3(0.0f,0.0f,1.0f);
	static const TwVector4d ZAxisV4(0.0f,0.0f,1.0f,0.0f);
	static const TwVector4d ZAxisV4W1(0.0f,0.0f,1.0f,1.0f);

} 


//- End of Vector ------------------------------------------------------------------------

//****************************************************************************************


#endif  // end of file      ( Vector.h )

